Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Commit abde6561b53efd80146a47b70d02eef6edfb0c87


Parents : 6a43bf5
Author : liamcottle <liam@liamcottle.com>
Date : 2025-01-02T23:39:54+13:00

use neopixel on heltec t114

Changes

2 files changed, 26 insertions(+), 7 deletions(-)

M Boards.h +7 -1
M Utilities.h +19 -6

Diff

diff --git a/Boards.h b/Boards.h
index 471321d..0c1dca6 100644
--- a/Boards.h
+++ b/Boards.h
@@ -623,7 +623,7 @@
#define HAS_BLE true
#define HAS_CONSOLE false
#define HAS_PMU false
- #define HAS_NP false
+ #define HAS_NP true
#define HAS_SD false
#define HAS_TCXO true
#define HAS_BUSY true
@@ -646,6 +646,8 @@
// LED
#define LED_T114_GREEN 3
#define PIN_T114_LED 14
+ #define NP_M 1
+ const int pin_np = PIN_T114_LED;
// SPI
#define PIN_T114_MOSI 22
@@ -722,4 +724,8 @@
#define OCP_TUNED 0x38
#endif
+ #ifndef NP_M
+ #define NP_M 0.15
+ #endif
+
#endif

diff --git a/Utilities.h b/Utilities.h
index 7f63097..e417990 100644
--- a/Utilities.h
+++ b/Utilities.h
@@ -106,7 +106,6 @@ uint8_t boot_vector = 0x00;
#if HAS_NP == true
#include <Adafruit_NeoPixel.h>
#define NUMPIXELS 1
- #define NP_M 0.15
Adafruit_NeoPixel pixels(NUMPIXELS, pin_np, NEO_GRB + NEO_KHZ800);
uint8_t npr = 0;
@@ -120,10 +119,17 @@ uint8_t boot_vector = 0x00;
}
void led_init() {
- if (EEPROM.read(eeprom_addr(ADDR_CONF_PSET)) == CONF_OK_BYTE) {
- uint8_t int_val = EEPROM.read(eeprom_addr(ADDR_CONF_PINT));
- led_set_intensity(int_val);
- }
+ #if MCU_VARIANT == MCU_NRF52
+ if (eeprom_read(eeprom_addr(ADDR_CONF_PSET)) == CONF_OK_BYTE) {
+ uint8_t int_val = eeprom_read(eeprom_addr(ADDR_CONF_PINT));
+ led_set_intensity(int_val);
+ }
+ #else
+ if (EEPROM.read(eeprom_addr(ADDR_CONF_PSET)) == CONF_OK_BYTE) {
+ uint8_t int_val = EEPROM.read(eeprom_addr(ADDR_CONF_PINT));
+ led_set_intensity(int_val);
+ }
+ #endif
}
void npset(uint8_t r, uint8_t g, uint8_t b) {
@@ -253,7 +259,12 @@ uint8_t boot_vector = 0x00;
void led_tx_off() { digitalWrite(pin_led_tx, LOW); }
#endif
#elif MCU_VARIANT == MCU_NRF52
- #if BOARD_MODEL == BOARD_RAK4631
+ #if HAS_NP == true
+ void led_rx_on() { npset(0, 0, 0xFF); }
+ void led_rx_off() { npset(0, 0, 0); }
+ void led_tx_on() { npset(0xFF, 0x50, 0x00); }
+ void led_tx_off() { npset(0, 0, 0); }
+ #elif BOARD_MODEL == BOARD_RAK4631
void led_rx_on() { digitalWrite(pin_led_rx, HIGH); }
void led_rx_off() { digitalWrite(pin_led_rx, LOW); }
void led_tx_on() { digitalWrite(pin_led_tx, HIGH); }
@@ -469,6 +480,8 @@ unsigned long led_standby_ticks = 0;
#endif
#elif MCU_VARIANT == MCU_NRF52
+ int led_standby_lng = 200;
+ int led_standby_cut = 100;
uint8_t led_standby_min = 200;
uint8_t led_standby_max = 255;
uint8_t led_notready_min = 0;


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────